<!DOCTYPE HTML>
<html>
<head>
<title>#ClipboardTimeout | AutoHotkey</title>
<meta name="description" content="The #ClipboardTimeout directive changes how long the script keeps trying to access the clipboard when the first attempt fails." />
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="../static/theme.css" rel="stylesheet" type="text/css" />
<script src="../static/content.js" type="text/javascript"></script>
</head>
<body>

<h1>#ClipboardTimeout</h1>

<p>改变当首次访问剪贴板失败后脚本继续尝试访问剪贴板的持续时间.</p>

<pre class="Syntax"><span class="func">#ClipboardTimeout</span> Milliseconds</pre>
<h2 id="Parameters">参数</h2>
<dl>

  <dt>Milliseconds</dt>
  <dd><p>间隔长度, 单位为毫秒. 指定 -1 表示持续访问剪贴板. 指定 0 表示只访问一次. 没有使用此指令的脚本使用 1000 ms 的超时时间.</p></dd>

</dl>
<h2 id="Remarks">备注</h2>
<p>一些应用程序让剪贴板长时间保持打开, 可能是要读写大量数据. 此时, 增加此设置的值可以让脚本在放弃并显示错误信息前等待较长的时间.</p>
<p>此设置适用于所有的<a href="../misc/Clipboard.htm">剪贴板</a>操作, 这里举些最简单的例子: <code>Var := Clipboard</code> 和 <code>Clipboard := "New Text"</code>.</p>
<p>每当脚本处于等待剪贴板变得可用的状态时, <u>不能</u> 运行新的<a href="../misc/Threads.htm">线程</a>且不会运行<a href="SetTimer.htm">计时器</a>. 但是, 如果用户按下了<a href="../Hotkeys.htm">热键</a>, 选择了<a href="Menu.htm">自定义菜单项</a>或执行例如按下按钮这样的 <a href="Gui.htm">GUI 动作</a>, 这些事件会被缓存至后面; 换句话说, 其子程序会在剪贴板变得可用后执行.</p>
<p>如果第一次读取剪切板失败, 此指令<strong>不会</strong>导致重新尝试读取剪贴板数据. 在 <span class="ver">[v1.1.16]</span> 前, 它确实会使脚本等待直至超时, 但这样做会阻止检索任何进一步的数据.</p>
<p>和其他指令一样, #ClipboardTimeout 不能有条件地执行.</p>
<h2 id="Related">相关</h2>
<p><a href="../misc/Clipboard.htm">Clipboard</a>, <a href="Thread.htm">Thread</a></p>
<h2 id="Examples">示例</h2>
<div class="ex" id="ExBasic">
<p><a class="ex_number" href="#ExBasic"></a> 使脚本在放弃访问剪贴板并显示错误信息之前, 等待 2 秒而不是 1 秒.</p>
<pre>#ClipboardTimeout 2000</pre>
</div>

</body>
</html>